This invention relates to a pattern drawing technique using outline font data and further to a technique to improve the pattern drawing system efficiency. The invention may suitably be applied to drawing image information supplied to page printers such as laser beam printers or bit map displays such as cathode-ray tubes.
The font data used in drawing patterns on the bit map memory is expressed in a dot font system which expresses the patterns in dot matrices. The dot font system has the advantage of being able to handle data easily since the font data themselves are expressed in dot matrices that have one-to-one correspondence with pixels. The dot font system can also draw patterns based on the font data at high speed. It has, however, drawbacks. It is difficult to rotate the pattern to a desired angle. When the dot density is low, the outline of the pattern becomes rough when magnified. On the other hand, increasing the dot density results in a significant increase in the amount of data processed.
To eliminate this problem, a so-called vector graphics technique may be used which has a data structure that defines the outline of a pattern as the collection of line sections. This eliminates the problems of rough pattern outline and of an increase in the amount of font data.
The above outline font data includes, for example, information about the kind of line such as free curves--short line vector, arc, spline curve and Bezier curve--and information about the starting and ending point of the line, and also about control points. This information defines the outline of the font.
In conventional systems using such outline font data in drawing required patterns, a processor that controls the whole system reads the corresponding outline font data from main memory, perform necessary processing on the outline defined by the outline font data thus read, such as rotation, magnification and reduction, and calculates the logical coordinates of the outline using the dot matrices. The information thus calculated is given to an advanced cathode ray tube controller (ACRTC). Based on a command from the processor and the logical coordinate data, the controller generates the outline draw address of the pattern and draws the outline. Next, the processor sends to the controller a command for painting the inside of the outline as well as a paint starting point. In response to this information, the controller performs the read/modify/write on the frame buffer memory and repeats this memory operation to paint the inside of the pattern outline.
According to the display control by the controller, the image information drawn on the frame buffer memory is supplied to CRT display equipment as video signals from the serial port of the frame buffer memory which has dual ports.
Examples of literatures that describe the pattern drawing technique using the outline font data include a "Nikkei Electronics," page 205-227, published by Nikkei McGraw-Hill on Mar. 23, 1987.
The inventor of this invention has found that the above conventional systems have the problem of a low efficiency of pattern drawing using outline font data.
That is, the controller such as ACRTC performs a serial processing, which consists of first drawing the pattern outline according to the instructions from the processor and then painting the interior of the outline according to the commands from the processor. Because of this serial approach, the controller cannot perform the next outline draw processing, such as calculating the outline draw addresses, while painting. The processor has to wait until the painting process is finished. Furthermore, for the controller such as ACRTC to be able to perform the outline drawing based on the outline font data, the processor must first calculate the coordinates by converting the outline font data into a data type handled by the controller. Since the algorithm to calculate the coordinates of a free curve section defined by the outline font data is relatively complex, the burden on the processor, which is used for general purposes, increases, thus lowering the operation efficiency of the entire system.